package com.ruoyi.huoyun.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 运单详情对象 waybill_info
 * 
 * @author mj
 * @date 2021-11-29
 */
public class WaybillInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 运单号 */
    private String waybillId;

    /** 司机会员号 */
    @Excel(name = "司机会员号")
    private String driverMid;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String plateNo;

    /** 货物种类 */
    @Excel(name = "货物种类")
    private String goodsType;

    /** 起始地 */
    @Excel(name = "起始地")
    private String startAddress;

    /** 目的地 */
    @Excel(name = "目的地")
    private String endAddress;

    /** 里程（千米） */
    @Excel(name = "里程", readConverterExp = "千=米")
    private BigDecimal miliage;

    /** 运输合同号 */
    @Excel(name = "运输合同号")
    private String transprotContractNumber;

    /** 状态（0未接单 1已接单 2已提货 3已到货 4已签收） */
    @Excel(name = "状态", readConverterExp = "0=未接单,1=已接单,2=已提货,3=已到货,4=已签收")
    private String status;

    /** 司机姓名 */
    @Excel(name = "司机姓名")
    private String driverName;

    /** 运输方式 */
    @Excel(name = "运输方式")
    private String transportMethods;

    /** 客户运单号 */
    @Excel(name = "客户运单号")
    private String clientTransportNumber;

    /** 总价 */
    @Excel(name = "总价")
    private BigDecimal totalPrice;

    /** 发货人姓名 */
    @Excel(name = "发货人姓名")
    private String consignorName;

    /** 发货人电话 */
    @Excel(name = "发货人电话")
    private String consignorTelephone;

    /** 收货人姓名 */
    @Excel(name = "收货人姓名")
    private String consigneeName;

    /** 收货人电话 */
    @Excel(name = "收货人电话")
    private String consigneeTelephone;

    /** 发货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date deliverGoodsTime;

    /** 收货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date receivingTime;

    /** 货物重量（吨） */
    @Excel(name = "货物重量", readConverterExp = "吨=")
    private BigDecimal goodsWeight;

    public void setWaybillId(String waybillId) 
    {
        this.waybillId = waybillId;
    }

    public String getWaybillId() 
    {
        return waybillId;
    }
    public void setDriverMid(String driverMid) 
    {
        this.driverMid = driverMid;
    }

    public String getDriverMid() 
    {
        return driverMid;
    }
    public void setPlateNo(String plateNo) 
    {
        this.plateNo = plateNo;
    }

    public String getPlateNo() 
    {
        return plateNo;
    }
    public void setGoodsType(String goodsType) 
    {
        this.goodsType = goodsType;
    }

    public String getGoodsType() 
    {
        return goodsType;
    }
    public void setStartAddress(String startAddress) 
    {
        this.startAddress = startAddress;
    }

    public String getStartAddress() 
    {
        return startAddress;
    }
    public void setEndAddress(String endAddress) 
    {
        this.endAddress = endAddress;
    }

    public String getEndAddress() 
    {
        return endAddress;
    }
    public void setMiliage(BigDecimal miliage) 
    {
        this.miliage = miliage;
    }

    public BigDecimal getMiliage() 
    {
        return miliage;
    }
    public void setTransprotContractNumber(String transprotContractNumber) 
    {
        this.transprotContractNumber = transprotContractNumber;
    }

    public String getTransprotContractNumber() 
    {
        return transprotContractNumber;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setDriverName(String driverName) 
    {
        this.driverName = driverName;
    }

    public String getDriverName() 
    {
        return driverName;
    }
    public void setTransportMethods(String transportMethods) 
    {
        this.transportMethods = transportMethods;
    }

    public String getTransportMethods() 
    {
        return transportMethods;
    }
    public void setClientTransportNumber(String clientTransportNumber) 
    {
        this.clientTransportNumber = clientTransportNumber;
    }

    public String getClientTransportNumber() 
    {
        return clientTransportNumber;
    }
    public void setTotalPrice(BigDecimal totalPrice) 
    {
        this.totalPrice = totalPrice;
    }

    public BigDecimal getTotalPrice() 
    {
        return totalPrice;
    }
    public void setConsignorName(String consignorName) 
    {
        this.consignorName = consignorName;
    }

    public String getConsignorName() 
    {
        return consignorName;
    }
    public void setConsignorTelephone(String consignorTelephone) 
    {
        this.consignorTelephone = consignorTelephone;
    }

    public String getConsignorTelephone() 
    {
        return consignorTelephone;
    }
    public void setConsigneeName(String consigneeName) 
    {
        this.consigneeName = consigneeName;
    }

    public String getConsigneeName() 
    {
        return consigneeName;
    }
    public void setConsigneeTelephone(String consigneeTelephone) 
    {
        this.consigneeTelephone = consigneeTelephone;
    }

    public String getConsigneeTelephone() 
    {
        return consigneeTelephone;
    }
    public void setDeliverGoodsTime(Date deliverGoodsTime) 
    {
        this.deliverGoodsTime = deliverGoodsTime;
    }

    public Date getDeliverGoodsTime() 
    {
        return deliverGoodsTime;
    }
    public void setReceivingTime(Date receivingTime) 
    {
        this.receivingTime = receivingTime;
    }

    public Date getReceivingTime() 
    {
        return receivingTime;
    }
    public void setGoodsWeight(BigDecimal goodsWeight) 
    {
        this.goodsWeight = goodsWeight;
    }

    public BigDecimal getGoodsWeight() 
    {
        return goodsWeight;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("waybillId", getWaybillId())
            .append("driverMid", getDriverMid())
            .append("plateNo", getPlateNo())
            .append("goodsType", getGoodsType())
            .append("startAddress", getStartAddress())
            .append("endAddress", getEndAddress())
            .append("miliage", getMiliage())
            .append("transprotContractNumber", getTransprotContractNumber())
            .append("status", getStatus())
            .append("driverName", getDriverName())
            .append("transportMethods", getTransportMethods())
            .append("clientTransportNumber", getClientTransportNumber())
            .append("totalPrice", getTotalPrice())
            .append("consignorName", getConsignorName())
            .append("consignorTelephone", getConsignorTelephone())
            .append("consigneeName", getConsigneeName())
            .append("consigneeTelephone", getConsigneeTelephone())
            .append("deliverGoodsTime", getDeliverGoodsTime())
            .append("receivingTime", getReceivingTime())
            .append("goodsWeight", getGoodsWeight())
            .toString();
    }
}
